home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 February: Tool Chest / Apple Developer CD Series Tool Chest February 1996 (Apple Computer)(1996).iso / Tool Chest / Text / WASTE / WASTE 1.1.2 Distribution / Pseudo-UPI for THINK Pascal / Notification.p < prev    next >
Encoding:
Text File  |  1995-10-12  |  1.3 KB  |  55 lines  |  [TEXT/PJMM]

  1. unit Notification;
  2.  
  3. { Pascal Interface to the Macintosh Libraries }
  4.  
  5. { Copyright © Apple Computer Inc. }
  6. { All Rights Reserved }
  7.  
  8. { Adapted for use with THINK Pascal 4.0.x by Marco Piovanelli }
  9.  
  10. interface
  11.     uses
  12.         Types;
  13.  
  14.     type
  15.  
  16.         NMRec = record
  17.                 qLink: QElemPtr;                                {next queue entry}
  18.                 qType: INTEGER;                                {queue type -- ORD(nmType) = 8}
  19.                 nmFlags: INTEGER;                                {reserved}
  20.                 nmPrivate: LONGINT;                                {reserved}
  21.                 nmReserved: INTEGER;                                {reserved}
  22.                 nmMark: INTEGER;                                {item to mark in Apple menu}
  23.                 nmIcon: Handle;                                    {handle to small icon}
  24.                 nmSound: Handle;                                    {handle to sound record}
  25.                 nmStr: StringPtr;                                {string to appear in alert}
  26.                 nmResp: UniversalProcPtr;                        {pointer to response routine}
  27.                 nmRefCon: LONGINT;                                {for application use}
  28.             end;
  29.         NMRecPtr = ^NMRec;
  30.  
  31.         NMProcPtr = ProcPtr;  { PROCEDURE NM(nmReqPtr: NMRecPtr); }
  32.         NMUPP = UniversalProcPtr;
  33.  
  34.     const
  35.         uppNMProcInfo = $000000C0; { PROCEDURE (4 byte param); }
  36.  
  37.     function NewNMProc (userRoutine: NMProcPtr): NMUPP;
  38.     inline
  39.         $2E9F;
  40.  
  41.     procedure CallNMProc (nmReqPtr: NMRecPtr;
  42.                                     userRoutine: NMUPP);
  43.     inline
  44.         $205F, $4E90;
  45.  
  46.     function NMInstall (nmReqPtr: NMRecPtr): OSErr;
  47.     inline
  48.         $205F, $A05E, $3E80;
  49.  
  50.     function NMRemove (nmReqPtr: NMRecPtr): OSErr;
  51.     inline
  52.         $205F, $A05F, $3E80;
  53.  
  54. implementation
  55. end.